查看原文
其他

AI找Bug,一键快速预测

Jane AI科技大本营 2019-02-23

     

作者 | Jane

出品 | AI科技大本营(ID:rgznai100)


在程序开发中,程序员每天都要和 Bug 打交道,对新手程序员而言,debug 是一件非常让人头疼的事情。好不容易写完一段代码,一运行,全是红色,找了好几圈,被几个符号累瞎了眼。



而且不同的编程语言的错误类型也不同。比如 JavaScript 定义了一些错误类型:Error(错误)、EvalError(全局错误)、RangeError(引用错误)、ReferenceError(参数错误)、SyntaxError(语法错误)、TypeError(类型错误)、URIError (编码错误)等;同样 Python 中也有几十种错误类型。


大家在学写代码的同时应该也学过一些解决 bug 的方法。比如,刚开始写的代码都比较简单,没有太过复杂的逻辑与实现,最直接的方法就是从头逐行检查,检查的时候注意 error 中提到的问题,是否括号少了另一半?是否哪个变量声明错了等等。比如刚学 C++ 的时候,出错时先检查 ; 、{}、() 是不是都有;再熟练一些,代码量增加,从语法错误到逻辑错误,大家会逐渐用到其他的方法或工具。有网友总结“初级码农靠编译器,中级码农用调试器,中高级码农靠写日记,而高级码农靠冥想和顿悟”。



今天营长要给大家介绍一款可以帮助大家快速预测、分析 bug 原因的工具:code-with-ai。操作非常简单,只要两步就可以给出可能存在的错误及其可能性。


  • 操作简单,只需两步


1.把 error 描述复制粘贴到输入框中

2.点击搜索,一键即可。

     

  • 无需登录,即可使用。


工具地址:

https://code-with-ai.app.render.com

     


  • 支持多语言


营长先是用 Python 语言简单检测了一下效果,看看到底给出哪些参考结果,随后又分别随机挑选了不同语言的报错提示。


比如,用 Python 最简单的 print 语句试验,如果我要输出 AI科技大本营,正确的语句为 print("AI科技大本营")随意更改语句中的 () 或 "",制造一些错误,来看看 code-with-ai 会给出怎样的分析结果:


print(AI科技大本营)

#去除 ""


可能有两种原因,一是 implement 问题,概率为 22%,二是 data structures,错误概率 52%。


     

print("AI科技大本营)

#只有一个 "


分析结果提示优先注意 strings 错误,其次是 data structures 错误。

     


print("AI科技大本营")

#英文括号改成中文括号

     


看了以上三个简单的试错,对 code-with-ai 的原理和功能大家应该有了基础的了解,通过给出的预测,可以在相应位置先从概率较高的问题类型开始检查。


接下来营长又随机挑选了不同语言的问题报错:


C++ 报错:   



Java 报错:   

     


JS 报错:   


营长只是用最简单的代码进行测试,大家可以用自己项目中的 error 测试一下,根据概率提供的优先级进行快速分析。


关于作者


研发这个神奇工具,造福万位码农的作者是一位印度开发者——Gaurav Arora,毕业于印度 Chandigarh PEC 理工大学。学习期间参与了多个编程和机器学习项目,并且是一名深度学习爱好者,热衷于解决对数百万人有影响力的复杂问题。



目前在高盛用户体验组中担任技术分析师,在高盛实习期间,为公司构建和维护 UI 工具包。也曾是创业项目 Researchshala 的联合创始人,Researchshala 是一个在线平台,有 40 多个研究项目,将教授和研究实习生联系起来,帮助他们完成研究项目,有 90 多名学生在卡内基梅隆大学、印度理工学院等大学的教授手下工作。

     

最后附上作者个人 Github 地址:

https://github.com/goru001


今天你的Bug都解决了吗?欢迎大家试用并交流~


(本文为 AI科技大本营原创文章,转载请微信联系 1092722531。) 


———————————————  征稿  ————————————————


推荐阅读:

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存